package com.erp.erp_project.controller;

import com.erp.erp_project.core.AjaxResult;
import com.erp.erp_project.core.annotation.Permission;
import com.erp.erp_project.model.Equip;
import com.erp.erp_project.model.Work;
import com.erp.erp_project.service.EquipService;
import com.erp.erp_project.service.WorkService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;

@Controller
@AllArgsConstructor
@RequestMapping("equip")
public class EquipController {
    private final EquipService equipService;
    private final WorkService workService;
    //返回页面
    @GetMapping("list")
    public String list(){
        return "equipment/list";
    }
    //展示数据
    @PostMapping("list")
    @ResponseBody
    public AjaxResult<PageInfo<Equip>> listAll(Equip equip, Integer page, Integer limit, Integer type, String va) {
        PageHelper.startPage(page, limit);
        Equip wr=equip;
        PageInfo<Equip> pageInfo = new PageInfo<>(equipService.list(equip,type,va));
//        workService.list();
        return new AjaxResult<PageInfo<Equip>>(pageInfo);
    }

    //添加
    @GetMapping("add")
    public String add() {
        return "equipment/add";
    }

    @PostMapping("add")
    @ResponseBody
    public AjaxResult<String> add(Equip work) {
        equipService.add(work);
        return new AjaxResult<String>("添加成功");
    }

    //编辑
    @RequestMapping("edit")
    public String edit(Equip equip, Model model) {
        model.addAttribute("equip",equipService.selectById(equip.getId()));
        return "information";
    }
    //编辑设备信息
    @GetMapping(value = "editAll")
    @Permission("作业修改")
    public String editGet(Work work, Model model){
        model.addAttribute("equip",equipService.selectByType(work.getName()));
        Equip equip =equipService.selectByType(work.getName());
        return "/equipment/information";
    }
    @PostMapping("/edit")
    @ResponseBody
    public AjaxResult<String> editpost(Equip equip,Model model) {
//        model.addAttribute("equip",equipService.selectByType(work.getName()));
        Equip equip1=equipService.selectByType(equip.getType());
                equipService.update(equip);
        return new AjaxResult<String>("修改成功");
    }


    //删除
    @DeleteMapping("/delete/{id}")
    @ResponseBody
    public AjaxResult<String> delete(@PathVariable Integer id) {
        equipService.delete(id);
        return new AjaxResult<String>("删除成功");
    }
    //多选删除
    //多选删除
    //多选删除
    @DeleteMapping("/delAll/{ids}")
    @ResponseBody
    public AjaxResult<String> deleteAll(@PathVariable String ids) {
        String arr[]=ids.split(",");
        for (String i:arr) {
            equipService.delete(Integer.parseInt(i));
        }
        return new AjaxResult<String>("删除成功");
    }

    @GetMapping("/test")
    public String editor(Equip equip, Model model){
        model.addAttribute("equip",equipService.selectById(equip.getId()));
        Equip equip1=equipService.selectById(equip.getId());
        System.out.println(equip1);
        return "equipment/content";
    }
}
